#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
    int n, a[100];
    scanf("%d", &n);

    for (int i = 0; i < n; i++)
        scanf("%d", &a[i]);

    for (int i = 0; i < n - 1; i++)  //选择排序的趟数为n-1
    {
        int min = i;  //假定最小元素为首元素(不算已经排好序的元素)
        for (int j = i + 1; j < n; j++)  //从首元素后的元素开始遍历数组剩余其他元素
            if (a[j] < a[min])
                min = j;  //记录下最小元素的下标值

        if (i != min)  //将此趟选择排序的最小元素与最左侧元素交换(不算已经排好序的元素)
        {
            int temp = a[i];
            a[i] = a[min];
            a[min] = temp;
        }
    }

    for (int i = 0; i < n; i++)
        printf("%d ", a[i]);
    return 0;
}